const input1 = document.getElementById("input1");
// let timer = null;
// input1.addEventListener("input", (e) => {
//   console.log("timer", timer);
//   if (timer) {
//     clearTimeout(timer);
//   }
//   //   下一次的输入 会把上一次的没有执行的timer 清除掉
//   timer = setTimeout(() => {
//     console.log("调用接口", e.target.value);
//     timer = null;
//   }, 300);
// });

function debounce(fn, delay = 500) {
  let timer = null;
  return () => {
    if (timer) {
      clearTimeout(timer);
    }
    timer = setTimeout(() => {
      //   fn();
      fn.apply(this, arguments);
      timer = null;
    }, delay);
  };
}

input1.addEventListener(
  "input",
  debounce(() => {
    console.log("接口调用", input1.value);
  }, 500)
);
